Prior art systems for driving a DC motor of the type employed in a computer tape or disk drive typically employ a relatively expensive regulated DC voltage supply. For example, in the system depicted in FIG. 1, a voltage regulator 10 regulates the unregulated DC supply voltage V.sub.IN and provides to a motor 12 a regulated supply of DC voltage V.sub.REG and a motor driving current I.sub.M, wherein the latter is a function of the voltage across the motor input and output supply terminals and the motor impedance. The motor impedance is a function of the resistance of the motor windings and the speed of the motor.
In the system depicted in FIG. 1, a single Hall effect sensor 14 provides position feedback signals to a microcontroller circuit 16 for use in determining the motor speed. The microcontroller 16 provides to a pulse width modulator (PWM) circuit 18 a signal indicative of a target voltage to be applied to the motor. The microcontroller 16 controls the voltage across the motor, and thus the motor current I.sub.M, by generating a signal (called TARGET in the drawings) that is pulse width modulated by PWM circuit 28 and employed to control the actuation of a switch unit 20. A current sensing device 22 provides a signal V(I.sub.M) indicative of the motor drive current I.sub.M, and this signal is fed back to the PWM circuit 16 and employed by the microcontroller 16 and PWM circuit 18 to limit the motor current to a predetermined maximum level.
The PWM signal controlling the switching device and thus modulating the motor current I.sub.M is generated by the PWM circuit 18 under the assumption that the motor supply voltage is well regulated and that a given duty cycle of the PWM signal will result in a certain motor current (note that motor speed increases as motor current increases, and the number of Hall transition signals per unit time increases as the motor speed increases). The microcontroller 16 and PWM circuit 18 deal with any low frequency variation of the load, such as, e.g., a variation due to the winding of a cartridge tape (e.g., a DC2000 tape cartridge), which might otherwise cause the motor speed to vary unacceptably, by periodically monitoring the motor speed and adjusting the PWM signal to increase or decrease the current I.sub.M as needed. In the exemplary system of FIG. 1, the microcontroller 16 checks the motor speed approximately every 10 ms, or at a rate of about 100 Hz.
In the highly competitive computer peripherals industry, it is extremely important to produce products at a low cost. Therefore, it would be advantageous to reduce the cost of a motor control system for use with a tape or disk drive by eliminating the need for a regulated DC voltage supply. However, it is important that the recording frequency (and thus the motor speed) of tape/disk drives be well controlled. If one were to simply eliminate the voltage regulator from the system of FIG. 1, a ripple in the supply voltage, typically having a frequency of about 100-120 Hz and an amplitude of several volts (peak-peak), would cause an unacceptable motor speed variation. This variation could be avoided by increasing the speed and complexity of the controller, particularly by increasing the speed of the main servo loop to about twice the expected bandwidth of the ripple component of the supply voltage, but this would increase the cost of the controller and thus nothing would be gained from eliminating the voltage regulator.